package com.yfp.client.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yfp.client.domain.vo.ClientIdAndFinishPositionVO;
import com.yfp.client.domain.OrderList;
import com.yfp.client.domain.vo.DetailVO;
import com.yfp.client.domain.vo.OrderVO;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;

/**
 *
 * @description 针对表【order_list(订单表)】的数据库操作Mapper
 * @createDate 2024-06-20 19:28:46
 * @Entity com.yfp.client.domain.OrderList
 */
public interface OrderListMapper extends BaseMapper<OrderList> {

    List<OrderVO> getOrderVO(String userId);

    /**
     * 根据订单id查询订单详情
     *
     * @param orderId
     * @return
     */
    List<OrderList> listByOrderSn(String orderId);

    /**
     * 根据订单id and Status查询订单详情
     *
     * @param orderId
     * @return
     */
    List<OrderList> listByOrderSnAndStatus(@Param("orderId") String orderId, @Param("status") int status);

    /**
     * 根据订单详情id获取订单数据
     *
     * @param orderId
     * @return
     */
    String getByOrderId(String orderId);

    /**
     * 根据套餐id获取订单数据
     *
     * @param comboId
     * @return
     */
    List<OrderList> listByComboId(String comboId);

    /**
     * 获取最后完成订单的点位ID
     *
     * @param clientId
     * @return
     */
    String findLastPositionIdByClinetId(String clientId);

    void updateGiftGoldById(@Param("orderListId") String orderListId, @Param("giftGold") BigDecimal giftGold);

    /**
     * 用户最后一单完成的点位id
     * @param clientId
     * @return
     */
    ClientIdAndFinishPositionVO selectClientIdAndFinishPositionId(String clientId);

    /**
     * 查询客服名称和手机号码
     * @param positionId
     * @return
     */
    DetailVO findOperational(String positionId);
}




